﻿using System;
using System.ComponentModel.DataAnnotations;
using PortalCurriculo.Domain;

namespace PortalCurriculo.MvcWebUI.Models
{ 
    public class CurriculoModel : ModelBase<CurriculoModel, Curriculo>
    {
        public int IdProfissional { get; set; }
        public ProfissionalModel Profissional { get; set; }

        [Required(ErrorMessageResourceName = "Objetivo_Required", ErrorMessageResourceType = typeof(Resources.Curriculo.Geral))]
        [Display(Name = "Objetivo_Display", ResourceType = typeof(Resources.Curriculo.Geral))]
        public string Objetivo { get; set; }
        [Display(Name = "ArquivoDoc_Display", ResourceType = typeof(Resources.Curriculo.Geral))]
        public string ArquivoDOC { get; set; }
        public DateTime DataCadastro { get; set; }
        [Display(Name = "DataUltimaAtualizacao_Display", ResourceType = typeof(Resources.Curriculo.Geral))]
        public DateTime DataUltimaAtualizacao { get; set; }

        [Display(Name = "NivelProfissional_Display", ResourceType = typeof(Resources.Curriculo.Geral))]
        public int IdNivelProfissional { get; set; }
        public NivelProfissionalModel NivelProfissional { get; set; }
        [Required(ErrorMessageResourceName = "CartaApresentacao_Required", ErrorMessageResourceType = typeof(Resources.Curriculo.Geral))]
        [Display(Name = "CartaApresentacao_Display", ResourceType = typeof(Resources.Curriculo.Geral))]
        public string CartaApresentacao { get; set; }
    }

    public class NivelProfissionalModel : ModelBase<NivelProfissionalModel, NivelProfissional>
    {
        public string Descricao { get; set; }
    }

    public class CargoCurriculoModel : ModelBase<CargoCurriculoModel, CargoCurriculo>
    {
        public int IdCurriculo { get; set; }
        public CurriculoModel Curriculo { get; set; }
        public int IdCargo { get; set; }
        public CargoModel Cargo { get; set; }
    }
}